Methods, apparatus and articles of manufacture to identify sources of network streaming services

ABSTRACT

Methods, apparatus and articles of manufacture to identify sources of network streaming services are disclosed. An example apparatus includes a coding format identifier to identify, from a received first audio signal representing a decompressed second audio signal, an audio compression configuration used to compress a third audio signal to form the second audio signal, and a source identifier to identify a source of the second audio signal based on the identified audio compression configuration.

RELATED APPLICATIONS

This patent arises from a continuation of U.S. patent application Ser.No. 16/984,091 (now U.S. Pat. No. ______), which was filed on Aug. 3,2020, and U.S. patent application Ser. No. 15/793,543 (now U.S. Pat. No.10,733,998) which was filed on Oct. 25, 2017. U.S. patent applicationSer. No. 16/984,091 and U.S. patent application Ser. No. 15/793,543 arehereby incorporated herein by reference in their entirety. Priority toU.S. patent application Ser. No. 16/984,091 and U.S. patent applicationSer. No. 15/793,543 is hereby claimed.

FIELD OF THE DISCLOSURE

This disclosure relates generally to network streaming services, and,more particularly, to methods, apparatus and articles of manufacture toidentify sources of network streaming services.

BACKGROUND

Audience measurement entities (AMEs) perform, for example, audiencemeasurement, audience categorization, measurement of advertisementimpressions, measurement of media exposure, etc., and link suchmeasurement information with demographic information. AMEs can determineaudience engagement levels for media based on registered panel members.That is, an AME enrolls people who consent to being monitored into apanel. The AME then monitors those panel members to determine media(e.g., television programs or radio programs, movies, DVDs,advertisements (ads), websites, etc.) exposed to those panel members.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example environment in which an example AME, inaccordance with this disclosure, identifies sources of network streamingservices.

FIG. 2 is a block diagram illustrating an example implementation of theexample coding format identifier of FIG. 1 .

FIG. 3 is a diagram illustrating an example operation of the examplecoding format identifier of FIG. 2 .

FIG. 4 is an example polar graph of example scores and offsets.

FIG. 5 is a flowchart representing example processes that may beimplemented as machine-readable instructions that may be executed toimplement the example AME to identify sources of network streamingservices.

FIG. 6 is a flowchart representing another example processes that may beimplemented as machine-readable instructions that may be executed toimplement the example coding format identifier of FIGS. 1 and/or 2 toidentify sources of network streaming services.

FIG. 7 illustrates an example processor platform structured to executethe example machine-readable instructions of FIG. 6 to implement theexample coding format identifier of FIGS. 1 and/or 2 .

Wherever possible, the same reference numbers will be used throughoutthe drawing(s) and accompanying written description to refer to the sameor like parts. Connecting lines or connectors shown in the variousfigures presented are intended to represent example functionalrelationships and/or physical or logical couplings between the variouselements.

DETAILED DESCRIPTION

AMEs typically identify the source of media (e.g., television programsor radio programs, movies, DVDs, advertisements (ads), websites, etc.)when measuring exposure to the media. In some examples, media hasimperceptible audience measurement codes embedded therein (e.g., in anaudio signal portion) that allow the media and a source of the media tobe determined. However, media delivered via a network streaming service(e.g., NETFLIX®, HULU®, YOUTUBE®, AMAZON PRIME®, APPLE TV®, etc.) maynot include audience measurement codes, rendering identification of themedia source difficult, to determine the source of media.

It has been advantageously discovered that, in some instances, differentsources of streaming media (e.g., NETFLIX®, HULU®, YOUTUBE®, AMAZONPRIME®, APPLE TV®, etc.) use different audio compression configurationsto store and stream the media they host. In some examples, an audiocompression configuration is a set of one or more parameters thatdefine, among possibly other things, an audio coding format (e.g., MP1,MP2, MP3, AAC, AC-3, Vorbis, WMA, DTS, etc.), compression parameters,framing parameters, etc. Because different sources use different audiocompression, the sources can be distinguished (e.g., identified,detected, determined, etc.) based on the audio compression applied tothe media. The media is de-compressed during playback. In some examples,the de-compressed audio signal is compressed using different trial audiocompression configurations for compression artifacts. Becausecompression artifacts become detectable (e.g., perceptible,identifiable, distinct, etc.) when a particular audio compressionconfiguration matches the compression used during the original encoding,the presence of compression artifacts can be used to identify one of thetrial audio compression configurations as the audio compressionconfiguration used originally. After the compression configuration isidentified, the AME can infer the original source of the audio. Examplecompression artifacts are discontinuities between points in aspectrogram, a plurality of points in a spectrogram that are small(e.g., below a threshold, relative to other points in the spectrogram),one or more values in a spectrogram having probabilities of occurrencethat are disproportionate compared to other values (e.g., a large numberof small values), etc. In instances where two or more sources use thesame audio compression configuration and are associated with compressionartifacts, the audio compression configuration may be used to reduce thenumber of sources to consider. Other methods may then be used todistinguish between the sources. However, for simplicity of explanationthe examples disclosed herein assume that sources are associated withdifferent audio compression configurations.

Disclosed examples identify the source(s) of media by identifying theaudio compression applied to the media (e.g., to an audio portion of themedia). In some examples, audio compression identification includes theidentification of the compression that an audio signal has undergone,regardless of the content. Compression identification can include, forexample, identification of the bit rate at which the audio data wasencoded, the parameters used at the time-frequency decomposition stage,the samples in the audio signal where the framing took place before thewindowing and transform were applied, etc. As disclosed herein, theaudio compression can be identified from media that has beende-compressed and output using an audio device such as a speaker, andrecorded. The recorded audio, which has undergone lossy compression andde-compression, can be re-compressed according to different trial audiocompressions. In some examples, the trial re-compression that results inthe largest compression artifacts is identified as the audio compressionthat was used to originally compress the media. The identified audiocompression is used to identify the source of the media. While theexamples disclosed herein only partially re-compress the audio (e.g.,perform only the time-frequency analysis stage of compression), fullre-compression may be performed.

Reference will now be made in detail to non-limiting examples of thisdisclosure, examples of which are illustrated in the accompanyingdrawings. The examples are described below by referring to the drawings.

FIG. 1 illustrates an example environment 100 in which an example AME102, in accordance with this disclosure, identifies sources of networkstreaming services. To provide media 104 (e.g., a song, a movie 105including video 109 and audio 110, a television show, a game, etc.), theexample environment 100 includes one or more streaming media sources(e.g., NETFLIX®, HULU®, YOUTUBE®, AMAZON PRIME®, APPLE TV®, etc.), anexample of which is designated at reference numeral 106. To formcompressed audio signals (e.g., the audio 110 of the video program 105)from an audio signal 111, the example media source 106 includes anexample audio compressor 112. In some examples, audio is compressed bythe audio compressor 112 (or another compressor implemented elsewhere)and stored in the media data store 108 for subsequent recall andstreaming. The audio signals may be compressed by the example audiocompressor 112 using any number and/or type(s) of audio compressionconfigurations (e.g., audio coding formats (e.g., MP1, MP2, MP3, AAC,AC-3, Vorbis, WMA, DTS, etc.), compression parameters, framingparameters, etc.) Media may be stored in the example media data store108 using any number and/or type(s) of data structure(s). The media datastore 108 may be implemented using any number and/or type(s) ofnon-volatile, and/or volatile computer-readable storage device(s) and/orstorage disk(s).

To present (e.g., playback, output, display, etc.) media, the exampleenvironment 100 of FIG. 1 includes any number and/or type(s) of examplemedia presentation device, one of which is designated at referencenumeral 114. Example media presentation devices 114 include, but are notlimited to a gaming console, a personal computer, a laptop computer, atablet, a smart phone, a television, a set-top box, or, more generally,any device capable of presenting media. The example media source 106provides the media 104 (e.g., the movie 105 including the compressedaudio 110) to the example media presentation device 114 using any numberand/or type(s) of example public, and/or public network(s) 116 or, moregenerally, any number and/or type(s) of communicative couplings.

To present (e.g., playback, output, etc.) audio (e.g., a song, an audioportion of a video, etc.), the example media presentation device 114includes an example audio de-compressor 118, and an example audio outputdevice 120. The example audio de-compressor 118 de-compresses the audio110 to form de-compressed audio 122. In some examples, the audiocompressor 112 specifies to the audio de-compressor 118 in thecompressed audio 110 the audio compression configuration used by theaudio compressor 112 to compress the audio. The de-compressed audio 122is output by the example audio output device 120 as an audible signal124. Example audio output devices 120 include, but are not limited, aspeaker, an audio amplifier, headphones, etc. While not shown, theexample media presentation device 114 may include additional outputdevices, ports, etc. that can present signals such as video signals. Forexample, a television includes a display panel, a set-top box includesvideo output ports, etc.

To record the audible audio signal 124, the example environment 100 ofFIG. 1 includes an example recorder 126. The example recorder 126 ofFIG. 1 is any type of device capable of capturing, storing, andconveying the audible audio signal 124. In some examples, the recorder126 is implemented by a people meter owned and operated by The NielsenCompany, the Applicant of the instant application. In some examples, themedia presentation device 114 is a device (e.g., a personal computer, alaptop, etc.) that can output the audio 124 and record the audio 124with a connected or integral microphone. In some examples, thede-compressed audio 122 is recorded without being output. Audio signals128 recorded by the example audio recorder 126 are conveyed to theexample AME 102 for analysis.

To identify the media source 106 associated with the audible audiosignal 124, the example AME 102 includes an example coding formatidentifier 130 and an example source identifier 132. The example codingformat identifier 130 identifies the audio compression applied by theaudio compressor 112 to form the compressed audio signal 110. The codingformat identifier 130 identifies the audio compression from thede-compressed audio signal 124 output by the audio output device 120,and recorded by the audio recorder 126. The recorded audio 128, whichhas undergone lossy compression at the audio compressor 112, andde-compression at the audio de-compressor 118 is re-compressed by thecoding format identifier 130 according to different trial audiocompression types and/or settings. In some examples, the trialre-compression that results in the largest compression artifacts isidentified by the coding format identifier 130 as the audio compressionthat was used at the audio compressor 112 to originally compress themedia.

The example source identifier 130 of FIG. 1 uses the identified audiocompression to identify the source 106 of the media 104. In someexamples, the source identifier 130 uses a lookup table to identify, ornarrow the search space for identifying the media source 106 associatedwith an audio compression identified by the coding format identifier130. An association of the media 104 and the media source 106, amongother data (e.g., time, day, viewer, location, etc.) is recorded in anexample exposure database 134 for subsequent development of audiencemeasurement statistics.

FIG. 2 is a block diagram illustrating an example implementation of theexample coding format identifier 130 of FIG. 1 . FIG. 3 is a diagramillustrating an example operation of the example coding formatidentifier 130 of FIG. 2 . For ease of understanding, it is suggestedthat the interested reader refer to FIG. 3 together with FIG. 2 .Wherever possible, the same reference numbers are used in FIGS. 2 and 3, and the accompanying written description to refer to the same or likeparts.

To store (e.g., buffer, hold, etc.) incoming samples of the recordedaudio 128, the example coding format identifier 130 includes an examplebuffer 202. The example buffer 202 of FIG. 2 may be implemented usingany number and/or type(s) of non-volatile, and/or volatilecomputer-readable storage device(s) and/or storage disk(s).

To perform time-frequency analysis, the example coding format identifier130 includes an example time-frequency analyzer 204. The exampletime-frequency analyzer 204 of FIG. 2 windows the recorded audio 128into windows (e.g., segments of the buffer 202 defined by a sliding ormoving window), and estimates the spectral content of the recorded audio128 in each window.

To obtain portions of the example buffer 202, the example coding formatidentifier 130 includes an example windower 206. The example windower206 of FIG. 2 is configurable to obtain from the buffer 202 windowsS1:L, S2:L+1, . . . SN/2+1:L+N/2 (e.g., segments, portions, etc.) of Lsamples of the recorded audio 128 to be processed. The example windower206 obtains a specified number of samples starting with a specifiedstarting offset 1, 2, . . . N/2+1 in the buffer 202. The windower 206can be configured to apply a windowing function to the obtained windowsS1:L, S2:L+1, . . . SN/2+1:L+N/2 of samples to reduce spectral leakage.Any number and/or type(s) of window functions may be implementedincluding, for example, a rectangular window, a sine window, a slopewindow, a Kaiser-Bessel derived window, etc.

To convert the samples obtained and windowed by the windower 206 to aspectrogram (three of which are designated at reference numeral 304, 305and 306), the example coding format identifier 130 of FIG. 2 includes anexample transformer 210. Any number and/or type(s) of transforms may becomputed by the transformer 210 including, but not limited to, apolyphase quadrature filter (PQF), a modified discrete cosine transform(MDCT), hybrids thereof, etc. The example transformer 210 transformseach window S1:L, S2:L+1, . . . SN/2+1:L+N/2 into a correspondingspectrogram 304, 305, . . . 306.

To compute compression artifacts, the example coding format identifier130 of FIG. 2 includes an example artifact computer 212. The exampleartifact computer 212 of FIG. 2 detects small values (e.g., values thathave been quantized to zero) in the spectrograms 304-306. Small valuesin the spectrograms 304-306 represent compression artifacts, and areused, in some examples, to determine when a trial audio compressioncorresponds to the audio compression applied by the audio compressor 112(FIG. 1 ).

To compute an average of the values of a spectrogram 304-306, theartifact computer 212 of FIG. 2 includes an example averager 214. Theexample averager 214 of FIG. 2 computes an average A1, A2, . . . AN/2+1of the values of corresponding spectrograms 304-306 for the plurality ofwindows S1:L, S2:L+1, . . . SN/2+1:L+N/2 of the block of samples 202.The averager 214 can compute various means, such as, an arithmetic mean,a geometric mean, etc. Assuming the audio content stays approximatelythe same between two adjacent spectrograms 304, 305, . . . 306, theaverages A1, A2, . . . AN/2+1 will also be similar. However, when audiocompression configuration and framing match those used at the audiocompressor 112, small values will appear in a particular spectrogram304-306, and differences D1, D2, . . . DN/2 between the averages A1, A2,. . . AN/2+1 will occur. The presence of these small values in aspectrogram 304-306 and/or differences D1, D2, . . . DN/2 betweenaverages A1, A2, . . . AN/2+1 can be used, in some examples, to identifywhen a trial audio compression configuration results in compressionartifacts.

To detect the small values, the example artifact computer 212 includesan example differencer 216. The example differencer 216 of FIG. 2computes the differences D1, D2, . . . DN/2 (see FIG. 3 ) betweenaverages A1, A2, . . . AN/2+1 of the spectrograms 304-306 computed usingdifferent window locations 1, 2, . . . N/2+1. When a spectrogram 304-306has small values representing potential compression artifacts, it willhave a smaller spectrogram average A1, A2, . . . AN/2+1 than thespectrograms 304-306 for other window locations. Thus, its differencesD1, D2, . . . DN/2 from the spectrograms 304-306 for the other windowlocations will be larger than differences D1, D2, . . . DN/2 betweenother pairs of spectrograms 304-306. In some examples, the differencer216 computes absolute (e.g., positive valued) differences.

To identify the largest difference D1, D2, . . . DN/2 between theaverages A1, A2, . . . AN/2+1 of spectrograms 304-306, the exampleartifact computer 212 of FIG. 2 includes an example peak identifier 218.The example peak identifier 218 of FIG. 2 identifies the largestdifference D1, D2, . . . DN/2 for a plurality of window locations 1, 2,. . . N/2+1. The largest difference D1, D2, . . . DN/2 corresponding tothe window location 1, 2, . . . N/2+1 used by the audio compressor 112.As shown in the example of FIG. 3 , the peak identifier 218 identifiesthe difference D1, D2, . . . DN/2 having the largest value. As will beexplained below, in some examples, the largest value is considered aconfidence score 308 (e.g., the greater its value the greater theconfidence that a compression artifact was found), and is associatedwith an offset 310 (e.g., 1, 2, . . . , N/2+1) that represents thelocation of the window S1:L, S2:L+1, . . . SN/2+1:L+N/2 associated withthe average A1, A2, . . . AN/2+1. The example peak identifier 218 storesthe confidence score 308 and the offset 310 in a coding format scoresdata store 220. The confidence score 308 and the offset 310 may bestored in the example coding format scores data store 220 using anynumber and/or type(s) of data structure(s). The coding format scoresdata store 220 may be implemented using any number and/or type(s) ofnon-volatile, and/or volatile computer-readable storage device(s) and/orstorage disk(s).

A peak in the differences D1, D2, . . . DN/2 nominally occurs every Tsamples in the signal. In some examples, T is the hop size of thetime-frequency analysis stage of a coding format, which is typicallyhalf of the window length L. In some examples, confidence scores 308 andoffsets 310 from multiple blocks of samples of a longer audio recordingare combined to increase the accuracy of coding format identification.In some examples, blocks with scores under a chosen threshold areignored. In some examples, the threshold can be a statistic computedfrom the differences, for example, the maximum divided by the mean. Insome examples, the differences can also be first normalized, forexample, by using the standard score. To combine confidence scores 308and offsets 310, the example coding format identifier 130 includes anexample post processor 222. The example post processor 222 of FIG. 2translates pairs of confidence scores 308 and offsets 310 into polarcoordinates. In some examples, a confidence score 308 is translated intoa radius (e.g., expressed in decibels), and an offset 310 is mapped toan angle (e.g., expressed in radians modulo its periodicity). In someexamples, the example post processor 222 computes a circular mean ofthese polar coordinate points (i.e., a mean computed over a circularregion about an origin), and obtains an average polar coordinate pointwhose radius corresponds to an overall confidence score 224. In someexamples, a circular sum can be computed, by multiplying the circularmean by the number of blocks whose scores was above the chosenthreshold. The closer the pairs of points are to each other in thecircle, and the further they are from the center, the larger the overallconfidence score 224. In some examples, the post processor 222 computesa circular sum by multiplying the circular mean and the number of blockswhose scores were above the chosen threshold. The example post processor222 stores the overall confidence score 224 in the coding format scoresdata store 220 using any number and/or type(s) of data structure(s). Anexample polar plot 400 of example pairs of scores and offsets is shownin FIG. 4 , for five different audio compression configurations: MP3,AAC, AC-3, Vorbis and WMA. As shown in FIG. 4 , the AC-3 coding formathas a plurality of points (e.g., see the example points in the exampleregion 402) having similar angles (e.g., similar window offsets), andlarger scores (e.g., greater radiuses) than the other coding formats. Ifa circular mean is computed for each configuration, the means for MP3,AAC, Vorbis and WMA would be near the origin, while the mean for AC-3would be distinct from the origin, indicating that the audio 128 wasoriginally compressed with the AC-3 coding format.

To store sets of audio compression configurations, the example codingformat identifier 130 of FIG. 2 includes an example compressionconfigurations data store 226. To control coding format identification,the example coding format identifier 130 of FIG. 2 includes an examplecontroller 228. To identify the audio compression applied to the audio128, the example controller 228 configures the time-frequency analyzer204 with different compression configurations. For combinations of atrial compression configuration (e.g., AC-3) and each of a plurality ofwindow offsets, the time-frequency analyzer 204 computes a spectrogram304-306. The example artifact computer 212 and the example postprocessor 222 determine the overall confidence score 224 for each thetrial compression configuration. The example controller 228 identifies(e.g., selects) the one of the trial compression configurations havingthe largest overall confidence score 224 as the compressionconfiguration that had been applied to the audio 128.

The compression configurations may be stored in the example compressionconfigurations data store 226 using any number and/or type(s) of datastructure(s). The compression configurations data store 226 may beimplemented using any number and/or type(s) of non-volatile, and/orvolatile computer-readable storage device(s) and/or storage disk(s). Theexample controller 228 of FIG. 2 may be implemented using, for example,one or more of each of a circuit, a logic circuit, a programmableprocessor, a programmable controller, a graphics processing unit (GPU),a digital signal processor (DSP), an application specific integratedcircuit (ASIC), a programmable logic device (PLD), a field programmablegate array (FPGA), and/or a field programmable logic device (FPLD).

While an example implementation of the coding format identifier 130 isshown in FIG. 2 , other implementations, such as machine learning, etc.may additionally, and/or alternatively, be used. While an example mannerof implementing the coding format identifier 130 of FIG. 1 isillustrated in FIG. 2 , one or more of the elements, processes and/ordevices illustrated in FIG. 2 may be combined, divided, re-arranged,omitted, eliminated and/or implemented in any other way. Further, theexample time-frequency analyzer 204, the example windower 206, theexample transformer 210, the example artifact computer 212, the exampleaverager 214, the example differencer 216, the example peak identifier218, the example post processor 222, the example controller 228 and/or,more generally, the example coding format identifier 130 of FIG. 2 maybe implemented by hardware, software, firmware and/or any combination ofhardware, software and/or firmware. Thus, for example, any of theexample time-frequency analyzer 204, the example windower 206, theexample transformer 210, the example artifact computer 212, the exampleaverager 214, the example differencer 216, the example peak identifier218, the example post processor 222, the example controller 228 and/or,more generally, the example coding format identifier 130 could beimplemented by one or more analog or digital circuit(s), logic circuits,programmable processor(s), programmable controller(s), GPU(s), DSP(s),ASIC(s), PLD(s), FPGA(s), and/or FPLD(s). When reading any of theapparatus or system claims of this patent to cover a purely softwareand/or firmware implementation, at least one of the example,time-frequency analyzer 204, the example windower 206, the exampletransformer 210, the example artifact computer 212, the example averager214, the example differencer 216, the example peak identifier 218, theexample post processor 222, the example controller 228, and/or theexample coding format identifier 130 is/are hereby expressly defined toinclude a non-transitory computer-readable storage device or storagedisk such as a memory, a digital versatile disk (DVD), a compact disk(CD), a Blu-ray disk, etc. including the software and/or firmware.Further still, the example coding format identifier 130 of FIG. 1 mayinclude one or more elements, processes and/or devices in addition to,or instead of, those illustrated in FIG. 2 , and/or may include morethan one of any or all the illustrated elements, processes and devices.

A flowchart representative of example machine-readable instructions forimplementing the example AME 102 of FIG. 1 is shown in FIG. 5 . In thisexample, the machine-readable instructions comprise a program forexecution by a processor such as the processor 710 shown in the exampleprocessor platform 700 discussed below in connection with FIG. 7 . Theprogram may be embodied in software stored on a non-transitorycomputer-readable storage medium such as a CD, a floppy disk, a harddrive, a DVD, a Blu-ray disk, or a memory associated with the processor710, but the entire program and/or parts thereof could alternatively beexecuted by a device other than the processor 710 and/or embodied infirmware or dedicated hardware. Further, although the example program isdescribed with reference to the flowchart illustrated in FIG. 5 , manyother methods of implementing the example AME 102 may alternatively beused. For example, the order of execution of the blocks may be changed,and/or some of the blocks described may be changed, eliminated, orcombined. Additionally, and/or alternatively, any or all the blocks maybe implemented by one or more hardware circuits (e.g., discrete and/orintegrated analog and/or digital circuitry, FPGA(s), ASIC(s),comparator(s), operational-amplifier(s) (op-amp(s)), logic circuit(s),etc.) structured to perform the corresponding operation withoutexecuting software or firmware.

The example program of FIG. 5 begins at block 502, where the AME 102receives a first audio signal (e.g., the example audio signal 128) thatrepresents a decompressed a second audio signal (e.g., the example audiosignal 110) (block 502). The example coding format identifier 130identifies, from the first audio signal, an audio compressionconfiguration used to compress a third audio signal (e.g., the exampleaudio signal 111) to form the second audio signal (block 504). Theexample source identifier 132 identifies a source of the second audiosignal based on the identified audio compression configuration (block506). Control exits from the example program of FIG. 5 .

A flowchart representative of example machine-readable instructions forimplementing the example coding format identifier 130 of FIGS. 1 and/or2 is shown in FIG. 6 . In this example, the machine-readableinstructions comprise a program for execution by a processor such as theprocessor 710 shown in the example processor platform 700 discussedbelow in connection with FIG. 7 . The program may be embodied insoftware stored on a non-transitory computer-readable storage mediumsuch as a CD, a floppy disk, a hard drive, a DVD, a Blu-ray disk, or amemory associated with the processor 710, but the entire program and/orparts thereof could alternatively be executed by a device other than theprocessor 710 and/or embodied in firmware or dedicated hardware.Further, although the example program is described with reference to theflowchart illustrated in FIG. 6 , many other methods of implementing theexample coding format identifier 130 may alternatively be used. Forexample, the order of execution of the blocks may be changed, and/orsome of the blocks described may be changed, eliminated, or combined.Additionally, and/or alternatively, any or all the blocks may beimplemented by one or more hardware circuits (e.g., discrete and/orintegrated analog and/or digital circuitry, FPGA(s), ASIC(s),comparator(s), operational-amplifier(s) (op-amp(s)), logic circuit(s),etc.) structured to perform the corresponding operation withoutexecuting software or firmware.

The example program of FIG. 6 begins at block 602, where for each set oftrial compression configuration, each block 202 of samples (block 603),and each window offset M (block 604), the example windower 206 creates awindow SM:L+M (block 606), and the example transformer 210 computes aspectrogram 304-306 of the window SM:L+M (block 608). The average 214computes an average AM of the spectrogram 304-306 (block 610). When theaverage AM of a spectrogram 304-306 has been computed for each windowoffset M (block 612), the example difference 216 computes differencesD1, D2, . . . DN/2 between the pairs of the averages AM (block 614). Theexample peak identifier 218 identifies the largest difference (block616), and stores the largest difference as the score 308 and theassociated offset M as the offset 310 in the coding format scores datastore 220 (block 618).

When all blocks have been processed (block 620), the example postprocessor 222 translates the score 308 and offset 310 pairs for thecurrently considered trial coding format parameter set into polarcoordinates, and computes a circular mean of the pairs in polarcoordinates as an overall confidence score for the currently consideredcompression configuration (block 622).

When all trial compression configurations have been processed (block624), the controller 228 identifies the trial compression configurationset with the largest overall confidence score as the audio compressionapplied by the audio compressor 112 (block 626). Control then exits fromthe example program of FIG. 6 .

As mentioned above, the example processes of FIGS. 5 and 6 may beimplemented using coded instructions (e.g., computer and/ormachine-readable instructions) stored on a non-transitory computerand/or machine-readable medium such as a hard disk drive, a flashmemory, a read-only memory, a compact disk, a digital versatile disk, acache, a random-access memory and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm non-transitory computer-readable medium is expressly defined toinclude any type of computer-readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media.

FIG. 7 is a block diagram of an example processor platform 700 capableof executing the instructions of FIG. 6 to implement the coding formatidentifier 130 of FIGS. 1 and/or 2 . The processor platform 700 can be,for example, a server, a personal computer, a workstation, or any othertype of computing device.

The processor platform 700 of the illustrated example includes aprocessor 710. The processor 710 of the illustrated example is hardware.For example, the processor 710 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors, GPUs, DSPs orcontrollers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor implements the example time-frequencyanalyzer 204, the example windower 206, the example transformer 210, theexample artifact computer 212, the example averager 214, the exampledifferencer 216, the example peak identifier 218, the example postprocessor 222, and the example controller 228.

The processor 710 of the illustrated example includes a local memory 712(e.g., a cache). The processor 710 of the illustrated example is incommunication with a main memory including a volatile memory 714 and anon-volatile memory 716 via a bus 718. The volatile memory 714 may beimplemented by Synchronous Dynamic Random-access Memory (SDRAM), DynamicRandom-access Memory (DRAM), RAMBUS® Dynamic Random-access Memory(RDRAM®) and/or any other type of random-access memory device. Thenon-volatile memory 716 may be implemented by flash memory and/or anyother desired type of memory device. Access to the main memory 714, 716is controlled by a memory controller (not shown). In this example, thelocal memory 712 and/or the memory 714 implements the buffer 202.

The processor platform 700 of the illustrated example also includes aninterface circuit 720. The interface circuit 720 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB) interface, a Bluetooth® interface, a nearfield communication (NFC) interface, and/or a peripheral componentinterface (PCI) express interface.

In the illustrated example, one or more input devices 722 are connectedto the interface circuit 720. The input device(s) 722 permit(s) a userto enter data and/or commands into the processor 710. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 724 are also connected to the interfacecircuit 720 of the illustrated example. The output devices 724 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay (LCD), a cathode ray tube display (CRT), an in-plane switching(IPS) display, a touchscreen, etc.) a tactile output device, a printer,and/or speakers. The interface circuit 720 of the illustrated example,thus, typically includes a graphics driver card, a graphics driver chipand/or a graphics driver processor.

The interface circuit 720 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem, a residential gateway, and/or network interface to facilitateexchange of data with external machines (e.g., computing devices of anykind) via a network 726 (e.g., an Ethernet connection, a digitalsubscriber line (DSL), a telephone line, a coaxial cable, a cellulartelephone system, a Wi-Fi system, etc.). In some examples of a Wi-Fisystem, the interface circuit 720 includes a radio frequency (RF)module, antenna(s), amplifiers, filters, modulators, etc.

The processor platform 700 of the illustrated example also includes oneor more mass storage devices 728 for storing software and/or data.Examples of such mass storage devices 728 include floppy disk drives,hard drive disks, CD drives, Blu-ray disk drives, redundant array ofindependent disks (RAID) systems, and DVD drives.

Coded instructions 732 including the coded instructions of FIG. 6 may bestored in the mass storage device 728, in the volatile memory 714, inthe non-volatile memory 716, and/or on a removable tangiblecomputer-readable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that example methods,apparatus and articles of manufacture have been disclosed that identifysources of network streaming services. From the foregoing, it will beappreciated that methods, apparatus and articles of manufacture havebeen disclosed which enhance the operations of a computer to improve thecorrectness of and possibility to identify the sources of networkstreaming services. In some examples, computer operations can be mademore efficient, accurate and robust based on the above techniques forperforming source identification of network streaming services. That is,through the use of these processes, computers can operate moreefficiently by relatively quickly performing source identification ofnetwork streaming services. Furthermore, example methods, apparatus,and/or articles of manufacture disclosed herein identify and overcomeinaccuracies and inability in the prior art to perform sourceidentification of network streaming services.

Example methods, apparatus, and articles of manufacture to identify thesources of network streaming services are disclosed herein. Furtherexamples and combinations thereof include at least the following.

Example 1 is an apparatus that includes: a coding format identifier toidentify, from a received first audio signal representing a decompressedsecond audio signal, an audio compression configuration used to compressa third audio signal to form the second audio signal; and a sourceidentifier to identify a source of the second audio signal based on theidentified audio compression configuration.

Example 2 is the apparatus of example 1, further including: atime-frequency analyzer to perform a first time-frequency analysis of afirst block of the first audio signal according to a first trialcompression configuration, and perform a second time-frequency analysisof the first block of the first audio signal according to a second trialcompression configuration; an artifact computer to determine a firstcompression artifact resulting from the first time-frequency analysis,and determine a second compression artifact resulting from the secondtime-frequency analysis; and a controller to select between the firsttrial compression configuration and the second trial compressionconfiguration as the audio compression configuration based on the firstcompression artifact and the second compression artifact.

Example 3 is the apparatus of example 2, wherein the controller selectsbetween the first trial compression configuration and the second trialcompression configuration based on the first compression artifact andthe second compression artifact includes comparing the first compressionartifact and the second compression artifact.

Example 4 is the apparatus of example 2, wherein: the time-frequencyanalyzer performs a third time-frequency analysis of a second block ofthe first audio signal according to the first trial compressionconfiguration, and performs a fourth time-frequency analysis of thesecond block of the first audio signal according to the second trialcompression configuration; the artifact computer determines a thirdcompression artifact resulting from the third time-frequency analysis,and determine a fourth compression artifact resulting from the fourthtime-frequency analysis; and the controller selects between the firsttrial compression configuration and the second trial compressionconfiguration as the audio compression configuration based on the firstcompression artifact, the second compression artifact, the thirdcompression artifact, and the fourth compression artifact.

Example 5 is the apparatus of example 4, further including a postprocessor to combine the first compression artifact and the thirdcompression artifact to form a first score, and combine the secondcompression artifact and the fourth compression artifact to form asecond score, wherein the controller selects between the first trialcompression configuration and the second trial compression configurationas the audio compression configuration by comparing the first score andthe second score.

Example 6 is the apparatus of example 5, wherein the post processorcombines the first compression artifact and the third compressionartifact to form the first score by: mapping the first compressionartifact and a first offset associated with the first compressionartifact to a first polar coordinate; mapping the third compressionartifact and a second offset associated with the second compressionartifact to a second polar coordinate; and computing the first score asa circular mean of the first polar coordinate and the second polarcoordinate.

Example 7 is the apparatus of example 1, wherein the first audio signalis recorded at a media presentation device.

Example 8 is a method that includes: receiving a first audio signal thatrepresents a decompressed second audio signal; identify, from the firstaudio signal, an audio compression configuration used to compress athird audio signal to form the second audio signal; and identifying asource of the second audio signal based on the identified audiocompression configuration.

Example 9 is the method of example 8, wherein the identifying the sourceof the second audio signal based on the identified audio compressionconfiguration includes: identifying a coding format based on theidentified audio compression configuration; and identifying the sourcebased on the coding format.

Example 10 is the method of example 8, wherein the identifying, from thefirst audio signal, the audio compression configuration includes:performing a first time-frequency analysis of a first block of the firstaudio signal according to a first trial compression configuration;determining a first compression artifact resulting from the firsttime-frequency analysis; performing a second time-frequency analysis ofthe first block of the first audio signal according to a second trialcompression configuration; determining a second compression artifactresulting from the second time-frequency analysis; and selecting betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact and the second compression artifact.

Example 11 is the method of example 10, wherein selecting between thefirst trial compression configuration and the second trial compressionconfiguration based on the first compression artifact and the secondcompression artifact includes comparing the first compression artifactand the second compression artifact.

Example 12 is the method of example 10, further including: performing athird time-frequency analysis of a second block of the first audiosignal according to the first trial compression configuration;determining a third compression artifact resulting from the thirdtime-frequency analysis; performing a fourth time-frequency analysis ofthe second block of the first audio signal according to the second trialcompression configuration; determining a fourth compression artifactresulting from the fourth time-frequency analysis; and selecting betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact, the second compression artifact, thethird compression artifact, and the fourth compression artifact.

Example 13 is the method of example 12, wherein selecting between thefirst trial compression configuration and the second trial compressionconfiguration as the audio compression configuration based on the firstcompression artifact, the second compression artifact, the thirdcompression artifact, and the fourth compression artifact includes:combining the first compression artifact and the third compressionartifact to form a first score; combining the second compressionartifact and the fourth compression artifact to form a second score; andcomparing the first score and the second score.

Example 14 is the method of example 13, wherein the combining the firstcompression artifact and the third compression artifact to form thefirst score includes: mapping the first compression artifact and a firstoffset associated with the first compression artifact to a first polarcoordinate; mapping the third compression artifact and a second offsetassociated with the second compression artifact to a second polarcoordinate; and computing the first score as a circular mean of thefirst polar coordinate and the second polar coordinate.

Example 15 is the method of example 8, wherein the first audio signal isrecorded at a media presentation device.

Example 16 is the method of example 8, wherein the audio compressionconfiguration indicates at least one of a time-frequency transform, awindow function, or a window length.

Example 17 is a non-transitory computer-readable storage medium storinginstructions that, when executed, cause a machine to perform operationsincluding: receiving a first audio signal that represents a decompressedsecond audio signal; identify, from the first audio signal, an audiocompression configuration used to compress a third audio signal to formthe second audio signal; and identifying a source of the second audiosignal based on the identified audio compression configuration.

Example 18 is the non-transitory computer-readable storage medium ofexample 17, including further instructions that, when executed, causethe machine to identify the source of the second audio signal based onthe identified audio compression configuration by: identifying a codingformat based on the identified audio compression configuration; andidentifying the source based on the coding format.

Example 19 is the non-transitory computer-readable storage medium ofexample 17, including further instructions that, when executed, causethe machine to identify, from the first audio signal, the audiocompression configuration by: performing a first time-frequency analysisof a first block of the first audio signal according to a first trialcompression configuration; determining a first compression artifactresulting from the first time-frequency analysis; performing a secondtime-frequency analysis of the first block of the first audio signalaccording to a second trial compression configuration; determining asecond compression artifact resulting from the second time-frequencyanalysis; and selecting between the first trial compressionconfiguration and the second trial compression configuration as theaudio compression configuration based on the first compression artifactand the second compression artifact.

Example 20 is the non-transitory computer-readable storage medium ofexample 19, including further instructions that, when executed, causethe machine to: perform a third time-frequency analysis of a secondblock of the first audio signal according to the first trial compressionconfiguration; determine a third compression artifact resulting from thethird time-frequency analysis; perform a fourth time-frequency analysisof the second block of the first audio signal according to the secondtrial compression configuration; determine a fourth compression artifactresulting from the fourth time-frequency analysis; and select betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact, the second compression artifact, thethird compression artifact, and the fourth compression artifact.

Example 21 is the non-transitory computer-readable storage medium ofexample 20, including further instructions that, when executed, causethe machine to select between the first trial compression configurationand the second trial compression configuration as the audio compressionconfiguration based on the first compression artifact, the secondcompression artifact, the third compression artifact, and the fourthcompression artifact by: combining the first compression artifact andthe third compression artifact to form a first score; combining thesecond compression artifact and the fourth compression artifact to forma second score; and comparing the first score and the second score.

Example 22 is the non-transitory computer-readable storage medium ofexample 21, including further instructions that, when executed, causethe machine to combine the first compression artifact and the thirdcompression artifact to form the first score by: mapping the firstcompression artifact and a first offset associated with the firstcompression artifact to a first polar coordinate; mapping the thirdcompression artifact and a second offset associated with the secondcompression artifact to a second polar coordinate; and computing thefirst score as a circular mean of the first polar coordinate and thesecond polar coordinate.

Example 23 is a method including: receiving a first audio signal thatrepresents a decompressed second audio signal, the second audio signalformed by compressing a third audio signal according to an audiocompression configuration; performing a first time-frequency analysis ofa first block of the first audio signal according to a first trialcompression configuration; determining a first compression artifactresulting from the first time-frequency analysis; performing a secondtime-frequency analysis of the first block of the first audio signalaccording to a second trial compression configuration; determining asecond compression artifact resulting from the second time-frequencyanalysis; and selecting between the first trial compressionconfiguration and the second trial compression configuration as theaudio compression configuration based on the first compression artifactand the second compression artifact.

Example 24 is the method of example 23, wherein the selecting betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact and the second compression artifactincludes comparing the first compression artifact and the secondcompression artifact.

Example 25 is the method of example 23, further including: performing athird time-frequency analysis of a second block of the first audiosignal according to the first trial compression configuration;determining a third compression artifact resulting from the thirdtime-frequency analysis; performing a fourth time-frequency analysis ofthe second block of the first audio signal according to the second trialcompression configuration; determining a fourth compression artifactresulting from the fourth time-frequency analysis; and selecting betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact, the second compression artifact, thethird compression artifact, and the fourth compression artifact.

Example 26 is the method of example 25, wherein the selecting betweenthe first trial compression configuration and the second trialcompression configuration as the audio compression configuration basedon the first compression artifact, the second compression artifact, thethird compression artifact, and the fourth compression artifactincludes: combining the first compression artifact and the thirdcompression artifact to form a first score; combining the secondcompression artifact and the fourth compression artifact to form asecond score; and comparing the first score and the second score.

Example 27 is the method of example 26, wherein the combining the firstcompression artifact and the third compression artifact to form thefirst score includes: mapping the first compression artifact and a firstoffset associated with the first compression artifact to a first polarcoordinate; mapping the third compression artifact and a second offsetassociated with the second compression artifact to a second polarcoordinate; and computing the first score as a circular mean of thefirst polar coordinate and the second polar coordinate.

“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim lists anythingfollowing any form of “include” or “comprise” (e.g., comprises,includes, comprising, including, having, etc.), it is to be understoodthat additional elements, terms, etc. may be present without fallingoutside the scope of the corresponding claim. As used herein, when thephrase “at least” is used as the transition term in a preamble of aclaim, it is open-ended in the same manner as the term “comprising” and“including” are open ended. Conjunctions such as “and,” “or,” and“and/or” are inclusive unless the context clearly dictates otherwise.For example, “A and/or B” includes A alone, B alone, and A with B. Inthis specification and the appended claims, the singular forms “a,” “an”and “the” do not exclude the plural reference unless the context clearlydictates otherwise.

Any references, including publications, patent applications, andpatents, cited herein are hereby incorporated by reference to the sameextent as if each reference were individually and specifically indicatedto be incorporated by reference and were set forth in its entiretyherein.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. An apparatus to identify audio sources, the apparatus comprising: interface circuitry to obtain an audio signal; computer readable instructions; and programmable circuitry to instantiate: an average computer to compute: a first plurality of averages corresponding to first data within a first plurality of spectrograms, the first data corresponding to the audio signal; and a second plurality of averages corresponding to second data within a second plurality of spectrograms, the second data corresponding to the audio signal; a difference computer to compute: a first plurality of differences between the first plurality of averages; and a second plurality of differences between the second plurality of averages; a peak identifier to identify: a first peak as the largest value of the first plurality of differences; a second peak as the largest value of the second plurality of differences; and a controller to select one of a first trial compression configuration or a second trial compression configuration based on a comparison of the first peak and second peak, the selected trial compression configuration corresponding to a source of the audio signal.
 2. The apparatus of claim 1, wherein: the audio signal is a first audio signal; a media source is to use a compression configuration to form a second audio signal; and a media player is to decompress the second audio signal to form the first audio signal.
 3. The apparatus of claim 1, wherein the peak identifier is further to: form a first score based on the first peak; determine a first offset between a first plurality of windows in the audio signal, the first plurality of spectrograms based on the first plurality of windows; form a second score based on the second peak; and determine a second offset between a second plurality of windows in the audio signal, the second plurality of spectrograms based on the second plurality of windows.
 4. The apparatus of claim 3, wherein: the programmable circuitry further instantiates a post processor is to: translate the first score and the first offset into a first polar coordinate; and translate the second score and the second offset into a second polar coordinate; and the controller is to select one of the first trial compression configuration or the second trial compression configuration based on a comparison of a first radius corresponding to the first polar coordinate and a second radius corresponding to the second polar coordinate.
 5. The apparatus of claim 4, wherein: the first polar coordinate corresponds to the first trial compression configuration and the first plurality of windows; the post processor is further to: translate a third score and a third offset into a third polar coordinate, the third polar coordinate corresponding to the first trial compression configuration and a third plurality of windows in the audio signal; and compute a circular mean based on the first polar coordinate and the third polar coordinate; and the controller is to select one of the first trial compression configuration or the second trial compression configuration based on a comparison of the circular mean and the second radius.
 6. The apparatus of claim 3, wherein the controller is to identify a compression artifact based on the first score.
 7. The apparatus of claim 6, wherein the compression artifact is one or more of a) a discontinuity between data points in the first plurality of spectrograms, and b) a data point in the first plurality of spectrograms having a magnitude below a first threshold.
 8. The apparatus of claim 1, wherein the programmable circuitry includes one or more of: at least one of a central processor unit, a graphics processor unit, or a digital signal processor, the at least one of the central processor unit, the graphics processor unit, or the digital signal processor having control circuitry to control data movement within the programmable circuitry, arithmetic and logic circuitry to perform one or more first operations corresponding to machine-readable data, and one or more registers to store a result of the one or more first operations, the machine-readable data in the apparatus; a Field Programmable Gate Array (FPGA), the FPGA including logic gate circuitry, a plurality of configurable interconnections, and storage circuitry, the logic gate circuitry and the plurality of the configurable interconnections to perform one or more second operations, the storage circuitry to store a result of the one or more second operations; or Application Specific Integrated Circuitry (ASIC) including logic gate circuitry to perform one or more third operations.
 9. A non-transitory machine readable storage medium comprising instructions to cause programmable circuitry to at least: compute a first plurality of averages corresponding to first data within a first plurality of spectrograms, the first data corresponding to an audio signal; compute a second plurality of averages corresponding to second data within a second plurality of spectrograms, the second data corresponding to the audio signal; compute a first plurality of differences between the first plurality of averages; compute a second plurality of differences between the second plurality of averages; identify a first peak as the largest value of the first plurality of differences; identify a second peak as the largest value of the second plurality of differences; and select one of a first trial compression configuration or a second trial compression configuration based on a comparison of the first peak and second peak, the selected trial compression configuration corresponding to a source of the audio signal.
 10. The non-transitory machine readable storage medium of claim 9, wherein: the audio signal is a first audio signal; a media source is to use a compression configuration to form a second audio signal; and a media player is to decompress the second audio signal to form the first audio signal.
 11. The non-transitory machine readable storage medium of claim 9, wherein the programmable circuitry is further to: form a first score based on the first peak; determine a first offset between a first plurality of windows in the audio signal, the first plurality of spectrograms based on the first plurality of windows; form a second score based on the second peak; and determine a second offset between a second plurality of windows in the audio signal, the second plurality of spectrograms based on the second plurality of windows.
 12. The non-transitory machine readable storage medium of claim 11, wherein the programmable circuitry is further to: translate the first score and the first offset into a first polar coordinate; translate the second score and the second offset into a second polar coordinate; and select one of the first trial compression configuration or the second trial compression configuration based on a comparison of a first radius corresponding to the first polar coordinate and a second radius corresponding to the second polar coordinate.
 13. The non-transitory machine readable storage medium of claim 12, wherein: the first polar coordinate corresponds to the first trial compression configuration and the first plurality of windows; and the programmable circuitry is further to: translate a third score and a third offset into a third polar coordinate, the third polar coordinate corresponding to the first trial compression configuration and a third plurality of windows in the audio signal; compute a circular mean based on the first polar coordinate and the third polar coordinate; and select one of the first trial compression configuration or the second trial compression configuration based on a comparison of the circular mean and the second radius.
 14. The non-transitory machine readable storage medium of claim 11, wherein the programmable circuitry is to identify a compression artifact based on the first score.
 15. The non-transitory machine readable storage medium of claim 14, wherein the compression artifact is one or more of a) a discontinuity between data points in the first plurality of spectrograms, and b) a data point in the first plurality of spectrograms having a magnitude below a first threshold.
 16. A method to identify audio sources, the method comprising: computing a first plurality of averages corresponding to first data within a first plurality of spectrograms, the first data corresponding to an audio signal; computing a second plurality of averages corresponding to second data within a second plurality of spectrograms, the second data corresponding to the audio signal; computing a first plurality of differences between the first plurality of averages; computing a second plurality of differences between the second plurality of averages; identifying a first peak as the largest value of the first plurality of differences; identifying a second peak as the largest value of the second plurality of differences; and selecting one of a first trial compression configuration or a second trial compression configuration based on a comparison of the first peak and second peak, the selected trial compression configuration corresponding to a source of the audio signal.
 17. The method of claim 16, wherein: the audio signal is a first audio signal; and the method further includes: using a compression configuration to form a second audio signal; and decompressing the second audio signal to form the first audio signal.
 18. The method of claim 16, further including: forming a first score based on the first peak; determining a first offset between a first plurality of windows in the audio signal, the first plurality of spectrograms based on the first plurality of windows; forming a second score based on the second peak; and determining a second offset between a second plurality of windows in the audio signal, the second plurality of spectrograms based on the second plurality of windows.
 19. The method of claim 18, further including: translating the first score and the first offset into a first polar coordinate; translating the second score and the second offset into a second polar coordinate; and selecting one of the first trial compression configuration or the second trial compression configuration based on a comparison of a first radius corresponding to the first polar coordinate and a second radius corresponding to the second polar coordinate.
 20. The method of claim 19, wherein: the first polar coordinate corresponds to the first trial compression configuration and the first plurality of windows; and the method further includes: translating a third score and a third offset into a third polar coordinate, the third polar coordinate corresponding to the first trial compression configuration and a third plurality of windows in the audio signal; computing a circular mean based on the first polar coordinate and the third polar coordinate; and selecting one of the first trial compression configuration or the second trial compression configuration based on a comparison of the circular mean and the second radius. 